﻿using QASPRibbon.Helpers;
using Schema = QASPRibbon.RibbonSchema;

namespace QASPRibbon.Controls
{
    /// <summary>
    /// Definines tooltip for ribbon controls.
    /// </summary>
    public class RibbonToolTip
    {
        /// <summary>
        /// The text that appears as the title of the tooltip.
        /// </summary>
        public string Title
        {
            get { return _title.Localized(); }
            set { _title = value; }
        }

        /// <summary>
        /// The text that appears in the body of the tooltip.
        /// </summary>
        public string Description
        {
            get { return _description.Localized(); }
            set { _description = value; }
        }

        /// <summary>
        /// An image to be used in the tooltip.
        /// </summary>
        public RibbonImageDefinition Image { get; set; }

        /// <summary>
        /// Create a new instance of the RibbonToolTip
        /// </summary>
        public RibbonToolTip() { }

        /// <summary>
        /// Create a new instance of the RibbonToolTip
        /// </summary>
        /// <param name="title">Title of the tooltip</param>
        public RibbonToolTip(string title)
            : this()
        {
            Title = title;
        }

        /// <summary>
        /// Create a new instance of the RibbonToolTip
        /// </summary>
        /// <param name="title">Title of the tooltip</param>
        /// <param name="description">Body of the tooltip</param>
        public RibbonToolTip(string title, string description)
            : this(title)
        {
            Description = description;
        }

        private string _title = string.Empty;
        private string _description = string.Empty;
    }
}
